package br.com.odontosul.negocio;

import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;

import javax.persistence.EntityManager;
import javax.persistence.NoResultException;
import javax.persistence.Query;

import org.jboss.seam.annotations.In;

import br.com.odontosul.DAO.ConsultaDAO;
import br.com.odontosul.entity.Consulta;
import br.com.odontosul.entity.Paciente;

public class ConsultaNegocio {
	
	@In(value="entityManager")
    private EntityManager em;
	
	public List<Consulta> pesquisarTodasConsultas() throws SQLException {
		
		List<Consulta> consulta = new ArrayList<Consulta>();
		ConsultaDAO DAO = new ConsultaDAO();
		
		consulta = DAO.recuperaTodasConsultas();
		
		return consulta;
	}
	
	public List<Consulta> buscarConsulta(Consulta consulta, String nomePaciente) throws SQLException {
		
		List<Consulta> consultas = new ArrayList<Consulta>();
		ConsultaDAO DAO = new ConsultaDAO();
		
		consultas = DAO.buscarConsulta(consulta, nomePaciente);
		
		return consultas;
	}

	public List<Consulta> pesquisarConsultas() {
		List<Consulta> consulta = null;
		
		em.getTransaction().begin();
		Query query = em.createNamedQuery("retornaConsultas");
		//query.setParameter("anoReferencia", anoReferencia);
	
		try {
			consulta = query.getResultList();
		}
		catch (NoResultException nre) {  
			consulta = null;
		}finally{
			em.close();
		}
		
		return consulta;
	}

}
